.bg-bubbles {
    position: absolute;
    // 使气泡背景充满整个屏幕；
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    // 如果元素内容超出给定的宽度和高度，overflow 属性可以确定是否显示滚动条等行为；
    overflow: hidden;
    li {
      position: absolute;
      // bottom 的设置是为了营造出气泡从页面底部冒出的效果；
      bottom: -160px;
      // 默认的气泡大小；
      width: 10px;
      height: 10px;
      background-color: #001529;
      list-style: none;
      // 使用自定义动画使气泡渐现、上升和翻滚；
      animation: square 15s infinite;
      transition-timing-function: linear;
      // 分别设置每个气泡不同的位置、大小、透明度和速度，以显得有层次感；
      &:nth-child(1) {
        left: 10%;
        animation-delay: 2s;
        animation-duration: 7s;
      }
      &:nth-child(2) {
        left: 20%;
        width: 9px;
        height: 9px;
        animation-duration: 6s;
      }
      &:nth-child(3) {
        left: 25%;
        animation-delay: 4s;
        animation-duration: 9s;
      }
      &:nth-child(4) {
        left: 40%;
        width: 3px;
        height: 3px;
        animation-delay: 7s;
        animation-duration: 11s;
      }
      &:nth-child(5) {
        left: 70%;
        animation-delay: 3s;
      }
      &:nth-child(6) {
        left: 80%;
        width: 5px;
        height: 5px;
        animation-delay: 6s;
      }
      &:nth-child(7) {
        left: 32%;
        width: 7px;
        height: 7px;
      }
      &:nth-child(8) {
        left: 55%;
        width: 12px;
        height: 12px;
        animation-delay: 5s;
      }
      &:nth-child(9) {
        left: 25%;
        width: 10px;
        height: 10px;
        animation-delay: 2s;
        animation-duration: 7s;
      }
      &:nth-child(10) {
        left: 85%;
        width: 14px;
        height: 14px;
        animation-delay: 5s;
      }
    }
    // 自定义 square 动画；
    @keyframes square {
      0% {
        opacity: 0.5;
        transform: translateY(0px) rotate(45deg);
      }
      25% {
        opacity: 0.75;
        transform: translateY(-170px) rotate(90deg)
      }
      50% {
        opacity: 1;
        transform: translateY(-190px) rotate(135deg);
      }
      100% {
        opacity: 0;
        transform: translateY(-210px) rotate(180deg);
      }
    }
  }
